草庐IT

iOS 推送通知和 AppDelegate 方法行为

全部标签

javascript - 一个可以进入任何方法链的函数

我喜欢Ruby的.tap方法的工作方式。它使您可以在不破坏链条的情况下利用任何方法链。我让您操作一个对象然后返回该对象,以便方法链可以正常进行。例如,如果你有foo="foobar".upcase.reverse,你可以这样做:"foo=foobar".upcase.tap{|s|prints}.reverse它将打印大写(但不反转)的字符串,并像原始行一样继续反转和赋值。我想在JS中有一个类似的功能,它只用于一个目的:将对象记录到控制台。我试过这个:Object.prototype.foo=function(){console.log(this);returnthis;};通常,它可

javascript - 奇怪的 javascript 行为(作业)

交换两个数字C++:inta=3;intb=5;a^=b^=a^=b;printf("%d,%d\n",a,b);//5,3PHP:$a=3;$b=5;$a^=$b^=$a^=$b;echo"$a,$b\n";//5,3Javascript:>a=3;b=5;a^=b^=a^=b;[a,b][0,3]为什么?看起来所有变量在所有表达式执行之前都已初始化... 最佳答案 你在JS中的赋值等同于a=a^(b=b^(a=a^b));这是从左到右计算的,我们得到3^(5^(3^5))所以一个简单的解决办法就是写a=(b^=(a^=b))^a

javascript - 使用 forge(或其他 JavaScript 方法)生成随机大素数

我需要在JavaScript中生成一个随机的大(大约4096位)质数,我已经在使用forge。Forge必须为此类任务提供某种生成器,因为它实现了同样依赖于随机素数的RSA。但是,当您只想获得一个随机素数时,我没有在forge的文档中找到任何东西(比如varmyRandomPrime=forge.random.getPrime(4096);会很棒)。那么在JavaScript中获得这样一个质数(有或没有伪造)的最佳方法是什么? 最佳答案 2014年6月11日更新:现在,使用forge版本0.6.6,您可以使用:varbits=102

javascript - 如何从剑道模板绑定(bind)调用父方法?

我有以下fiddle.我正在尝试为数组汽车中的每个元素调用父方法lowestMpgMsg。我曾尝试使用以下绑定(bind)但没有成功:data-bind="text:lowestMpgMsg()"data-bind="text:parent.lowestMpgMsg()"data-bind="text:parent().lowestMpgMsg()"data-bind="text:parent().lowestMpgMsg"谢谢!这是我的html---这是我的javascriptvarviewModel=kendo.observable({cars:[{brand:"Toyota",m

javascript - 难以包装 javascript 行为并将其保留以备后用

我正在使用javascript进行编程并使用Promises,现在正在使用Q.js。我终于明白了自己在做什么,但在特定行为上遇到了困难。我有一种情况,我将相当相似的代码重复了几次。它基本上是这样的......{//startvardeferred=Q.defer();//dosomething{deferred.resolve();}returndeferred.promise;}好吧,这一切都很好,但每次都重复所有这一切让人很烦,所以我试图把它包起来。这只是一个示例,它不是整个javascript文件,因为大多数其他部分都不相关。{varlist=[];queue=function(

javascript - 元素宽度/高度的方法

问题:是否存在getBoundingClientRect和window.getComputedStyle的width或不同的情况>高度?当元素具有box-sizing时,我刚刚在IE中发现不一致的width(见下文),其中window.getComputedStyle返回错误值(value)。所以我考虑过用getBoundingClientRect中的值覆盖width和height但不确定是否会失败。问题示例(在IE中损坏):http://jsfiddle.net/bwPM8/varbox=document.querySelector('.box');vargBCR_width=box

javascript - 如何从另一个调用 ES6 类中的一个方法?

如果我有这样一个javascriptES6类:import$from"jquery";exportclasstest{constructor(){this.es6='yay';}writeLine(text){console.log(text);}getTestData(){writeLine('writeLinecall');//我从另一个文件导入类并调用getTestDataSystem.import('app/classDefinition').then(function(classDefinitionModul){vartest=newclassDefinitionModul.

javascript - 使用 React.JS 检索和缓存 SVG 节点边界框​​的最佳方法

我正在渲染带有标签的SVG组件。这些标签组件需要根据它们的文本内容(以及它们的大小)正确布局,以避免相互重叠。要获得每个标签的真实大小,似乎每次更新标签内容时都需要双重渲染。在标签组件级别,我需要第一次渲染检索真实SVGDOM节点的边界框出于性能原因缓存边界框重新渲染组件以根据其缓存的边界框调整标签位置然后,在每次重绘时:根据缓存的边界框渲染比较之前和更新的props之间的标签内容,如果有变化:更新并缓存标签边界框根据更新和缓存的边界框重新渲染到目前为止,这是我实现标签组件的方式:varLabel=React.createClass({updateBBox:function(){//T

javascript - 带有 websocket 的 Node.js socket.io

我是Node.js或websocket的初学者。我有问题:我的HTML代码:test"usestrict";vargniazdo=newWebSocket('ws://localhost:3000');gniazdo.onopen=function(){console.log('Połączono');};gniazdo.onmessage=function(m){console.log(m.data);};我的Node.js代码:vario=require('socket.io')(3000);io.on('connection',function(socket){console.l

javascript - 如何从 ui-grid 中显示的按钮调用范围方法 - 在 Angular js 中

我想创建一个带有链接的自定义列,并在ng-click上调用$scope方法。ngGrid(HowtocallascopemethodfromabuttondisplayedinngGrid-inAngularjs)有非常相似的问题,该解决方案有效。我正在使用ui-grid,它应该只是ngGrid的更新版本,但它似乎在那里不起作用。这是我的代码:varapp=angular.module('plunker',['ui.grid']);app.controller('MainCtrl',function($scope){$scope.gridOptions={data:[{name:'te